package com.byzk.p2p.admin.user.dao;

import java.util.List;

import com.byzk.p2p.admin.money.dto.RechargeRecord;
import com.byzk.p2p.admin.user.dto.UserAccount;
import com.byzk.p2p.admin.user.vo.UserAccountVo;


/**
 * 用户资金dao层
 * @author suker.zhou
 *
 */
public interface UserAccountDao {
	public Integer deleteByPrimaryKey(Integer id);

	public Integer insert(UserAccount record);
	
	public Integer update(UserAccount record);

	public Integer batchUpdate(List<UserAccount> list);
	
	public UserAccount getById(Integer id);

	public UserAccountVo selectByPrimaryKey(Integer id);

	public UserAccountVo selectByUserId(Integer userId);

	public Integer count(UserAccountVo vo);
	
	public List<UserAccountVo> list(UserAccountVo vo);
	
	public UserAccount getByUserId(Integer uid);
	
	public Double sumTotalRecharge(RechargeRecord record);

	public UserAccount sumUserAccount();
	
	public Integer deleteByUserId(Integer userId);
	
	//根据用户id查询账户
	public UserAccount getAccount(Integer id);
	
	/**
	 * 查找钻石和金钻会员
	 * @return
	 */
	public List<UserAccount>  getAccountLevel5Or6();
	
	/**
	 * Description:查询用户利息管理费比例
	 * @auther:fdq
	 * @date :2016年11月21日
	 */
	public double getFeePercentByUserId(Integer userId);
	
	
	/**
	 * Description:查询借款用户账户信息
	 * @auther:fdq
	 * @date :2016年11月21日
	 */
	public UserAccount getBorrowApplyAccount(Integer borrowApplyId);
}